// 防抖函数，一直触发，停下来开始计时delay，然后执行
export function debounce(func, delay, message) {
  let timer // 维护一个 timer
  return function() {
    if (timer) {
      clearTimeout(timer)
      this.$message.error(message)
    }
    timer = setTimeout(() => {
      func.apply(this, arguments) // 用apply指向调用debounce的对象，相当于this.fn(arguments);
    }, delay)
  }
}

// 自定义邮箱规则
export function checkEmail(rule, value, callback) {
  const regEmail = /^\w+@\w+(\.\w+)+$/
  if (regEmail.test(value)) {
    // 合法邮箱
    return callback()
  }
  callback(new Error('请输入合法邮箱'))
}
// 自定义手机号规则
export function checkMobile(rule, value, callback) {
  const regMobile = /^1[34578]\d{9}$/
  if (regMobile.test(value)) {
    return callback()
  }
  // 返回一个错误提示
  callback(new Error('请输入合法的手机号码'))
}
